Amazon DynamoDB এ Table Scaling এবং Auto Scaling কনফিগারেশন একটি অত্যন্ত গুরুত্বপূর্ণ অংশ। DynamoDB এর স্কেলেবিলিটি বৈশিষ্ট্য নিশ্চিত করে যে আপনার ডেটাবেস অ্যাপ্লিকেশনটি হাই ট্রাফিক সময়ে পারফরম্যান্স বজায় রাখতে সক্ষম হয়, এবং স্বয়ংক্রিয়ভাবে সক্ষম হয় যখন প্রয়োজন হয় বেশি বা কম থ্রুপুট ক্ষমতার। এখানে আমরা DynamoDB এর Table Scaling এবং Auto Scaling কনফিগারেশন সম্পর্কে বিস্তারিত আলোচনা করব।
DynamoDB টেবিলের scaling মানে হল টেবিলের রিড এবং রাইট ক্যাপাসিটি ইউনিট (RCU, WCU) বৃদ্ধি বা কমানো। এটি দুটি মোডে কাজ করে:
এই মোডে, আপনি রিড এবং রাইট ক্যাপাসিটি ইউনিট নির্ধারণ করে দেন, যা টেবিলের ট্র্যাফিকের ভিত্তিতে আপনার প্রয়োজন হয়। এই পদ্ধতিতে আপনি যত রিড বা রাইট অপারেশন চাচ্ছেন, তত ইউনিট প্রদান করতে হবে।
যত বেশি রিড এবং রাইট ক্যাপাসিটি ইউনিট কনফিগার করবেন, তত বেশি ডেটা প্রোসেস করতে পারবেন। তবে এটি অতিরিক্ত খরচ হতে পারে।
এই মোডে, আপনি কোনও নির্দিষ্ট রিড বা রাইট ক্যাপাসিটি ইউনিট সেট না করে, ডেটাবেস স্বয়ংক্রিয়ভাবে রিড এবং রাইট অপারেশন ম্যানেজ করে। এই মোডে, ডেটাবেস আপনার ট্রাফিকের উপর ভিত্তি করে পারফরম্যান্স প্রদান করে, অর্থাৎ এটি স্বয়ংক্রিয়ভাবে স্কেল হয়।
Auto Scaling হল একটি বৈশিষ্ট্য যা আপনাকে DynamoDB টেবিলের রিড এবং রাইট ক্যাপাসিটি স্বয়ংক্রিয়ভাবে পরিচালনা করতে সাহায্য করে। এটি আপনার টেবিলের ব্যবহার অনুসারে ক্যাপাসিটি পরিবর্তন করে, যাতে আপনি অতিরিক্ত খরচ এড়িয়ে যেতে পারেন এবং একই সময়ে পারফরম্যান্স বজায় রাখতে পারেন।
AWS CLI বা API ব্যবহার করে Auto Scaling কনফিগার করা:
আপনি AWS CLI ব্যবহার করে DynamoDB টেবিলের জন্য Auto Scaling কনফিগার করতে পারেন। এখানে একটি উদাহরণ দেওয়া হল:
aws dynamodb update-table --table-name <TableName> --provisioned-throughput
ReadCapacityUnits=5,WriteCapacityUnits=5 --scaling-policy
TargetTrackingScalingPolicyConfiguration={
"TargetValue": 70.0,
"ScaleInCooldown": 300,
"ScaleOutCooldown": 300,
"MinimumCapacity": 5,
"MaximumCapacity": 100
}
এই কমান্ডটি Target Tracking স্কেলিং পলিসি ব্যবহার করে এবং আপনি রিড এবং রাইট ক্যাপাসিটি ইউনিটের জন্য মিনিমাম এবং ম্যাক্সিমাম মান নির্ধারণ করতে পারবেন।
বৈশিষ্ট্য | Provisioned Mode | Auto Scaling Mode |
---|---|---|
ক্যাপাসিটি নির্ধারণ | আপনি নিজেই রিড এবং রাইট ক্যাপাসিটি নির্ধারণ করেন। | স্বয়ংক্রিয়ভাবে ক্যাপাসিটি বৃদ্ধি বা কমানো হয়। |
স্কেলিং | স্কেল করতে হয় ম্যানুয়ালি। | স্বয়ংক্রিয়ভাবে স্কেল হয়। |
খরচ | অতিরিক্ত খরচ হতে পারে যদি ট্রাফিক হঠাৎ বাড়ে। | খরচ সামঞ্জস্যপূর্ণ, প্রয়োজন অনুসারে। |
ব্যবহার | স্থিতিশীল এবং পূর্বানুমানযোগ্য অ্যাপ্লিকেশন। | ডাইনামিক ট্রাফিক সহ অ্যাপ্লিকেশন। |
Auto Scaling DynamoDB টেবিলের জন্য অত্যন্ত উপকারী, কারণ এটি আপনার ডেটাবেসের ক্ষমতাকে স্বয়ংক্রিয়ভাবে পরিচালনা করতে সক্ষম, আপনার অ্যাপ্লিকেশনটিকে সঠিকভাবে স্কেল করতে সহায়তা করে এবং খরচ কমানোর সুযোগ প্রদান করে। Provisioned Mode অধিক নিয়ন্ত্রণ প্রদান করে কিন্তু ম্যানুয়াল স্কেলিংয়ের প্রয়োজন হয়।
এখন, আপনি DynamoDB টেবিলের scaling এবং auto scaling কনফিগারেশন সম্পর্কে জানতে পারলেন।
common.read_more